/*
 * Filename:    CodeListDaoImpl.java
 * Copyright:   2014 中国平安保险（集团）股份有限公司 版权所有
 * Company:     平安科技养老险及健康险系统开发部
 * Create at:   2014年10月17日
 */
package com.paic.mhis.hcpms.common.community.intergration.dao.impl;

import java.util.List;
import java.util.Map;

import org.springframework.stereotype.Component;

import com.paic.mhis.common.base.dto.LabelDTO;
import com.paic.mhis.hcpms.common.community.dto.CodeListDTO;
import com.paic.mhis.hcpms.common.community.dto.HcpmsContactInfoDTO;
import com.paic.mhis.hcpms.common.community.dto.MedicalDeptDTO;
import com.paic.mhis.hcpms.common.community.dto.MedicalOrgInfoDTO;
import com.paic.mhis.hcpms.common.community.intergration.dao.CommunityDAO;
import com.paic.pafa.biz.dao.BaseDAO;

/**
 * 
 * @author EX-XIEQI001
 * 
 */
@Component("communityDao")
public class CommunityDaoImpl extends BaseDAO implements CommunityDAO {

	@Override
	public List<CodeListDTO> queryCodeListAll() {
		return (List<CodeListDTO>) this._list("community.queryCodeListAll", null);
	}
	
	@Override
	public List<CodeListDTO> queryCodeList(Map<String, Object> map) {
		return (List<CodeListDTO>) this._list("community.queryCodeListAll", map);
	}

	@Override
	public List<MedicalOrgInfoDTO> queryMedicalOrgInfoList(Map<String, Object> map) {
		return (List<MedicalOrgInfoDTO>) this._list("community.queryMedicalOrgInfoList", map);
	}

	@Override
	public List<MedicalDeptDTO> queryMedicalDeptInfoList(Map<String, Object> map) {
		return (List<MedicalDeptDTO>) this._list("community.queryMedicalDeptInfoList", map);
	}

	@Override
	public List<MedicalOrgInfoDTO> queryNewMedicalOrgInfoList(Map<String, Object> paramMap) {
		return (List<MedicalOrgInfoDTO>) this._list("community.queryNewMedicalOrgInfoList", paramMap);
	}
	@Override
	public List<MedicalOrgInfoDTO> queryNewMedicalOrgInfoList1(Map<String, Object> paramMap) {
		return (List<MedicalOrgInfoDTO>) this._list("community.queryNewMedicalOrgInfoList1", paramMap);
	}
	@Override
	public List<MedicalOrgInfoDTO> queryMedicalOrgInfoListWithLevel(Map<String, Object> paramMap) {
		return (List<MedicalOrgInfoDTO>) this._list("community.queryNewMedicalOrgInfoListWithLevel", paramMap);
	}

	@Override
	public List<HcpmsContactInfoDTO> queryWorkDepList(Map<String, Object> map) {
		return (List<HcpmsContactInfoDTO>) this._list("community.queryWorkDepList", map);
	}

	public List<CodeListDTO> getProvincialOrgDepList(Map<String, Object> map) {
		return (List<CodeListDTO>) this._list("community.getProvincialOrgDepList", map);
	}

	/**
	 * 通过统筹区,查询所有的医院(非药店)
	 * 
	 * @param map
	 *            map
	 * @return 医院列表
	 * 
	 *         Modification History: Date Version Author Description
	 *         ------------
	 *         ------------------------------------------------------ 2015-3-3
	 *         mhis_hcpms EX-XIONGFEI002 创建
	 */
	@Override
	public List<MedicalOrgInfoDTO> queryMedicalOrgInfoListByManpower(Map<String, Object> map) {
		return (List<MedicalOrgInfoDTO>) this._list("community.queryMedicalOrgInfoListByManpower", map);
	}

	/** 在基础表中获取性别 */
	@Override
	public List<LabelDTO<String>> getAllFiledDict(Map<String, Object> param) {
		return (List<LabelDTO<String>>) this._list("selectSexList", param);
	}
}
